For direct mailing purposes or in the production of personalised printed matter, it is necessary to print between ten or one thousand documents, having the same contents, except for a specific small area of the document. Usually, a document consists of one single sided sheet of paper, but such a document can also consist of several single sided or even double sided sheets. It is also possible that several pages of such a document must be printed or imposed on a single sheet of paper. One or more imposed sheets are then folded and/or assembled in a specific order to deliver a folder or booklet with the required layout. We will discuss here the problems that arise when individualised single sided sheets must be provided, although the current invention also solves these problems for the more complex configurations.
The most simple format of an individualised single sided sheet comprises a general text with open spaces. In the open spaces, the specific data are filled in per page. Traditionally, this is handled in the following way: the general text--indicated further on as the background image--is printed on a plurality of sheets, which are all identical. The batch printing can be done by an offset printer, by a photocopier or by a digital printer. The page specific information can be added immediately after the first printing pass or on a later moment. This can be per page by an individual tag stuck on the sheet, by hand writing, type-writing or by a printer coupled to a computer. Such a printer can be an impact printer, electrographic laser printer, inkjet printer etc. The problems for this method are the visible difference in writing and between the ink of the background image and the ink of the page specific data. Moreover, the page specific text is usually not properly aligned with the background text. The second pass to add the page specific data requires extra time and printing devices. If the background quality must be high, offset printing is required, which is very costly for small batches of individual copies. Another important drawback of this method is that only overwriting is possible. Nothing from the background image can be locally erased.
In the current digital output systems comprising a bitmap printer, for example in desktop applications, it is possible to generate a data stream for individual pages in a page description language. For each page to be printed, the data stream comprises a description of the background image and a description of the individual image. For each individual page, the data stream describing the background image and the specific data must be converted to a bitmap. If the background image is complex, this means an important burden for the raster image processor (RIP) generating the bitmap, while just a small portion on the sheet will be different from the previous sheet. Moreover, the transmission per sheet of the data stream describing the background data, can impose a large performance reduction on the total system. If the transmission goes over a network, this kind of print job imposes a tremendous load on the connection, thereby influencing the throughput of other tasks using the same network.
A method that alleviates the transmission problem is the creation of "forms". A page description language that supports the definition and use of forms is a Level 2 feature of the POSTSCRIPT. page description language. POSTSCRIPT is a trade mark of Adobe Systems Inc. The POSTSCRIPT language reference manual, 2nd edition ISBN 0-201-18127-4, chapter 4.7 on pages 172 to 175 describes the concept and the use of forms. A fixed template can be defined in a form, and the variable information can be painted on top of it. Each execution of the form will produce the same output. The graphical output of the form is saved in a cache. Each time the form is used, the saved output may be retrieved instead of re-executing the form's definition. The manual states that this can significantly improve performance when the form is used many times. The way of caching is implementation dependent. In most implementations, the cache stores an internal representation--a display list--that is converted to a bitmap each time the form is required. Anyhow, if a form contains an image, the whole image must be cached, which requires a substantial amount of memory. Moreover, the generation of a bitmap from the display list still requires as serious amount of work.
None of the above described methods give a satisfactory solution to the problems sketched herein before.